package com.ndp.fb.model.report.param;

import com.ndp.fb.model.business.TimeRange;
import lombok.Getter;
import lombok.NoArgsConstructor;
import lombok.Setter;

import java.io.Serializable;
import java.util.List;
import java.util.Map;

/**
 * Created by hunk.qin on 2016/3/22.
 */
@Setter
@Getter
@NoArgsConstructor
public class EcReportForABTestInputParam implements Serializable {

    private static final long serialVersionUID = -1922876735793515482L;
    /**
     * 查询时间段
     */
    TimeRange day;

    /**
     * 查询时间段2（分段对比时使用）
     */
    TimeRange day2;
    /**
     * 分组字段
     */
    String group;

    /**
     * 账号ID列表
     */
    List<String> accountId;

    /**
     * 版位过滤
     */
    List<String> placement;

    /**
     * FeedId过滤
     */
    String feedId;

    /**
     * ProductSet过滤
     */
    List<String> productSet;

    /**
     * 将ProductSet名称全部转换为Id
     */
    List<String> productSetId;

    /**
     * 受众模板过滤
     */
    List<String> audienceTemplate;

    /**
     * 将受众模板名称全部转换为Id
     */
    List<String> audienceTemplateId;

    /**
     * 创意模板过滤
     */
    List<String> creativeTemplate;
    /**
     * 将创意模板全部转换为Id
     */
    List<String> creativeTemplateId;


    /**
     * 优化方向过滤
     */
    List<String> optimizationGoal;

    /**
     * 计费方式过滤
     */
    List<String> billingEvent;

    /**
     * 出价过滤
     */
    List<String> bid;

    /**
     * 将出价转换为Boolean
     */
    List<Boolean> autoBid;

    /**
     * 广告排程过滤
     */
    List<Map<String, Object>> timePeriod;

    /**
     * 分页大小
     */
    Integer pSize;

    /**
     * 当前页
     */
    Integer cPage;

    /**
     * 按多少天进行分组
     */
    Integer timeIncrement;
}
